var todo = new Vue({
    el: '#todo',
    data: {
        todoNew: '',
        todoList: [],
        searchText: '',
        todoListAll:[]
    },
    methods: {
        todoAdd: function() {
            //添加待办数据对象，包括text内容,completed完成状态,editable编辑状态三个属性
            //添加后清空输入框
            var todo = { Checked: false, Text: this.todoNew, Editable: false };
            this.todoListAll.push(todo);
            this.todoList=this.todoListAll;
        },
        todoRemove: function(todo) {
            //删除待办数据
            this.todoListAll.remove(todo);
        },
        editTodo: function(todo) {
            //编辑待办数据
            todo.Editable = true;
        },
        saveTodo: function(todo) {
            todo.Editable = false;
        },
        search: function(text) {
            this.todoList=[];
            for (var i = 0; i < this.todoListAll.length; i++) {
                if (this.todoListAll[i].Text.toUpperCase().indexOf(text.toUpperCase()) != -1) {
                    this.todoList.push(this.todoListAll[i]);
                }
            }
        }
    },
    filters: {
        toUpper: function(value) {
            //按键文字切换，分别是「确认」和「编辑」，编辑中时「删除」按钮的状态为disable
            // var _todoList = []
            // for (var i = 0; i < list.length; i++) {
            //     if (list[i].Text.indexOf(this.searchText) != -1) {
            //         _todoList.push(list[i]);
            //     }
            // }
            // return todoList;
            return value.toUpperCase();
        }
    },
    computed: {
        todoTotal: function() {
            var count = 0;
            //todo:获取剩余待办数量
            for (var i = this.todoList.length - 1; i >= 0; i--) {
                if (!this.todoList[i].Checked) {
                    count++;
                }
            }
            return count;
        }
    }
})
Array.prototype.remove = function(b) {
    var a = this.indexOf(b);
    if (a >= 0) {
        this.splice(a, 1);
        return true;
    }
    return false;
};
